package org.jboss.pitbull.internal.nio.socket; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLEngine; import java.nio.channels.SocketChannel; /** * @author <a href="mailto:bill@burkecentral.com">Bill Burke</a> * @version $Revision: 1 $ */ public class SSLChannelFactory extends ManagedChannelFactory { protected SSLContext sslContext; public SSLChannelFactory(SSLContext sslContext, EventHandlerFactory factory) { super(factory); this.sslContext = sslContext; } @Override public ManagedChannel create(SocketChannel channel) throws Exception { SSLEngine engine = sslContext.createSSLEngine(); engine.setUseClientMode(false); engine.setNeedClientAuth(false); engine.setWantClientAuth(false); SSLChannel sslChannel = new SSLChannel(channel, engine); return new ManagedChannel(sslChannel, eventHandlerFactory.create()); } }